SciELO - Scientific Electronic Library Online

 
vol.72 issue145MODEL OF FINITE ELEMENTS FOR LINEAL ANALYSIS OF A POROELASTIC MATERIAL TRANSVERSE BY ISOTROPICIMPACT OF THE FAILURES AND INTERRUPTION IN PROCESS. AN ANALYSIS OF VARIABILITY IN PRODUCTION PROCESSES author indexsubject indexarticles search
Home Pagealphabetic serial listing  

Services on Demand

Journal

Article

Indicators

Related links

  • On index processCited by Google
  • Have no similar articlesSimilars in SciELO
  • On index processSimilars in Google

Share


DYNA

Print version ISSN 0012-7353On-line version ISSN 2346-2183

Dyna rev.fac.nac.minas vol.72 no.145 Medellín Jan./Apr. 2005

 

SOLUCIÓN AL PROBLEMA COMBINADO DE UBICACIÓN ESTRATÉGICA DE ALMACENES Y ASIGNACIÓN DE INVENTARIOS USANDO TÉCNICAS HEURÍSTICAS

SOLUTION TO PROBLEM OF LOCATION OF WARE HOUSES AND ALLOCATION OF INVENTORIES USING HEURISTIC TECHNIQUES

LUIS FERNANDO MORENO VELÁSQUEZ
Escuela de Sistemas, Facultad de Minas, Universidad Nacional de Colombia

JUAN DAVID VELÁSQUEZ HENAO
Escuela de Sistemas, Facultad de Minas, Universidad Nacional de Colombia

FRANCISCO JAVIER DÍAZ SERNA
Escuela de Sistemas, Facultad de Minas, Universidad Nacional de Colombia

Recibido para revisión 3 de Marzo de 2003, aceptado 23 de -Febrero de 2004, versión final recibida 17 de Marzo de 2004

RESUMEN: El problema combinado de ubicación de almacenes y asignación óptima de inventarios es bastante difícil de plantear y resolver por métodos analíticos. Se busca determinar los almacenes que deben seleccionarse de un conjunto dado, así como los inventarios asociados a cada uno de ellos, para atender la demanda de un conjunto de artículos con un nivel de confianza dado. En este artículo se presenta un análisis del planteamiento del problema para atender la demanda de repuestos y dos metodologías heurísticas de solución. La primera, propuesta por los autores y llamada Búsqueda Exhaustiva con Poda, BEP, es basada en el recorrido del espacio de soluciones, eliminando durante la ejecución del algoritmo aquellas que sean dominadas, la cual puede ser usada en problemas con un número moderado de almacenes; y la segunda corresponde a la Búsqueda Tabú, la cual se usa cuando la BEP no se hace apropiada. Se realiza una comparación de ambas metodologías.

PALABRAS CLAVE: ubicación de almacenes, inventarios, optimización heurística, Búsqueda Tabú, búsqueda exhaustiva con poda.

ABSTRACT: The combined problem of location of warehouses and optimal allocation of inventories is quite difficult to pose and to solve by analytical methods. It is searched to determine the warehouses that must be selected of a given set, as well as the inventories associated to each one of them, to satisfy the demand of an article set with a given confidence level. It is presented an analysis of the generic exposition of the problem and a heuristic methodology of solution based on the exploration of the space of solutions, eliminating during the execution of the algorithm, those that are dominated, which must used in problems with a moderated number of warehouses. The second, is the Tabu Search Method, which is used when BEP is inappropriate. A comparison between BEP and Tabu Search method is made.

KEYWORDS: warehouse location, inventories, heuristic optimization, Tabu Search, exhaustive search with pruning.

1 INTRODUCCIÓN

En el mundo real, la representación del fenómeno de interés puede involucrar una gran complejidad. Por lo tanto, la toma de decisiones se realiza, usualmente, sobre sub-problemas que pueden conducir a puntos subóptimos o a puntos óptimos locales, con valores alejados del óptimo global del sistema real.

Este es el caso, en las decisiones sobre aspectos logísticos, especialmente en el problema de ubicación estratégica de almacenes y en la determinación de los niveles óptimos de inventario, donde se intenta minimizar separadamente dos funciones de costo que tienen un impacto conjunto en los estados financieros de la empresa. Estos son dos problemas tradicionales de la Investigación de Operaciones que han sido solucionados de forma independiente, debido a la complejidad que representa su solución conjunta.

Formalmente, el problema consiste en seleccionar de un conjunto A de posibles almacenes o bodegas, denominados sitios de oferta, un subconjunto de ellos, los cuales deben contener un conjunto de repuestos R, para atender la demanda de otro conjunto de sitios, de tal forma que se minimicen los costos de operación de la empresa. Dichos repuestos atienden un conjunto de sitios para los cuales se conoce su demanda, D, esto es, su función de distribución de probabilidad y los parámetros que la caracterizan.

Para el problema planteado, los autores no han encontrado un método de solución directa en la literatura de Investigación de Operaciones. Por lo tanto, su solución debe ser encontrada usando métodos heurísticos. Para este caso, en particular, se utiliza un método de ramificación y poda del espacio de soluciones, llamado por los autores Búsqueda Exhaustiva con Poda, BEP, y el método de Búsqueda Tabú, ambos combinados con simulación.

A continuación se presenta una descripción formal del problema y las metodologías empleadas por los autores para su solución.

2 FORMULACIÓN MATEMÁTICA DEL MODELO

El problema en cuestión se obtiene por la confluencia simultánea de tres problemas: el problema del transporte, la ubicación de almacenes y la determinación del volumen óptimo de inventarios. Se presenta a continuación una descripción de ellos.

2.1 EL PROBLEMA DEL TRANSPORTE

El problema del transporte consiste en determinar, dados un grupo de m sitios de oferta, que en adelante se denominarán almacenes, y n sitios de demanda, que también se denominarán plantas, la cantidad de artículos que deben ser enviados desde cada almacén hasta cada sitio de demanda, minimizando los costos totales de transporte.

Este problema puede expresarse como el siguiente modelo de programación lineal:

donde cij es el costo unitario de enviar el artículo del almacén i al sitio de demanda j; xij es la cantidad de artículos enviados del almacén i al sitio de demanda j; si es la existencia u oferta de artículos del almacén i; y dj es la demanda del sitio j.

El primer conjunto de restricciones obliga a que el despacho total de artículos desde el almacén i sea igual a sus existencias, mientras que el segundo conjunto indica que el total de artículos que llegan al sitio de demanda j sea igual a sus requerimientos.

Este es un problema bastante sencillo que puede resolverse por el algoritmo Simplex de programación lineal, o por algoritmos especializados más eficientes para el problema del transporte.

2.2 EL PROBLEMA DE LA UBICACIÓN DE ALMACENES

El problema de la ubicación de almacenes es una extensión del problema anterior. Consiste en determinar no solamente cuanto se debe enviar de cada almacén a cada sitio de demanda sino también cuales son los almacenes que deben seleccionarse para atender una demanda de artículos, minimizando los costos fijos de operación de los almacenes y los de transporte. La diferencia con el problema anterior consiste en que en este nuevo problema, los almacenes deben justificar su existencia y por ello se involucran los costos fijos necesarios para mantenerlos seleccionados. Este problema puede plantearse de forma general como el modelo de programación lineal entera:

donde cij son los costos unitarios de transporte y fi los costos fijos de operación de los almacenes (que pueden incluir sus costos de construcción diferidos en el tiempo). Nótese que yi es una variable binaria que indica si el almacén debe ser seleccionado o no, mientras que xij indica la cantidad de artículos que debe enviarse de cada almacén a cada sitio de demanda.

Este es un problema de programación entera, también clásico en la Investigación de Operaciones. La diferencia principal con el problema del transporte radica en la ineficiencia computacional de los algoritmos de programación entera en comparación con los problemas puramente lineales.

El problema del volumen óptimo de inventarios
El siguiente nivel de complejidad que puede obtenerse a partir del problema anterior, consiste en considerar adicionalmente a las variables anteriores, el nivel óptimo de inventario de cada uno de los repuestos en cada uno de los almacenes.

Además de las dos categorías de costos descritas anteriormente: fijos (de operación de los almacenes) y de transporte, aparecen otras dos categorías adicionales relacionadas con el manejo de inventarios que corresponden al costo de tener inventarios muy altos o muy bajos. Altos niveles de inventario podrían ocasionar grandes costos de almacenamiento y de oportunidad del capital. Por el contrario, inventarios demasiados bajos ocasionarían pérdidas, debido a un posible déficit en el momento de atender la demanda de artículos, ocasionando la interrupción de la producción o pérdida de ventas, según el caso. Al igual que en el problema de ubicación de almacenes, este algoritmo determina cuáles almacenes deben ser seleccionados, y cuánto debe mantenerse en inventario de cada repuesto en cada uno de ellos, para atender los sitios de demanda con un nivel de confianza dado.

Este es un problema más complejo que el de ubicación de almacenes, ya que aparecen conceptos estadísticos no lineales como el nivel de confianza (o probabilidad de encontrar un repuesto en el almacén cuando sea solicitado) y la distribución estadística que modela la demanda,

Por facilidad, los costos en pesos por año ($/año) se denotarán como se muestra a continuación. ­ C1: costos fijos de operación de los almacenes. ­ C2: costos de transporte de los repuestos de los almacenes a las plantas de producción. ­ C3: costos de falla de los repuestos. ­ C4: costos de conservación de los inventarios.

El costo de transporte de los repuestos, C2, se obtiene como el producto del costo en pesos de transportar un artículo desde un sitio de oferta hasta un sitio de demanda, por la frecuencia de falla anual del repuesto en el sitio de demanda (medido en veces/año)

El costo de falla de los repuestos ocurre cuando la máquina falla, aunque el repuesto se encuentre disponible en el almacén, causando una interrupción de la producción. Este costo, C3, puede calcularse de la siguiente manera: Llámese p la pérdida monetaria de no tener operativa la maquinaria cuando se presenta una falla y FNO la frecuencia de no operación o número promedio de veces que falla la máquina por unidad de tiempo. Si cuando se presenta la falla, el repuesto se encuentra en un almacén de la empresa su expresión es:

donde p es el producto de dos factores: la duración de no operación (en horas)?y el costo por unidad de tiempo de no operación (en $/hora). FNO está dado en número de veces/año.

Los distintos ítems se calculan de la siguiente forma: la duración de la no operación producida por la falla de un repuesto es igual a la duración del transporte más la duración del montaje; la duración del transporte es función de la ubicación del almacén y del sitio de demanda; la duración del montaje es función del repuesto y del tipo de máquina. El costo por unidad de tiempo de no operación es la utilidad dejada de percibir que puede ser una multa o la contribución marginal de la máquina, entre otros.

En la formulación de este problema, se considera que el consumo de los repuestos es unitario. No se considera el problema del lote económico (ya que se trata de resolver un problema entre el almacén de la empresa y la planta, no entre el proveedor y este almacén).

El costo de conservación de los inventarios, C4, es el costo en que se incurre por tener los artículos almacenados. Dicho costo corresponde al volumen de inventario de cada repuesto, VIR (en número de respuestos), por su costo unitario, CUR (en $/repuesto), por una tasa de conservación TC (en %/año, tal como se indica en (5), donde R es el conjunto de repuestos.

La tasa de conservación, por unidad de tiempo, es un porcentaje del costo de adquisición y representa el costo de oportunidad del dinero invertido en inventario más algunos costos adicionales causados por tener el repuesto almacenado, tales como vigilancia, seguros y obsolescencia, entre otros. Para encontrar el volumen óptimo de inventarios de cada repuesto, es necesario suponer una distribución de probabilidades de la demanda. Para las simulaciones realizadas se supuso que la probabilidad de falla de los repuestos permanece constante en el tiempo, tal como ocurre por ejemplo, en la mayoría de los repuestos eléctricos. Tal situación se representa matemáticamente por la distribución de Poisson.

Aunque se utilizó esta distribución, en casos más generales podrían utilizarse otras distribuciones como la Normal, o la de Weibull donde la tasa de fallas de los repuestos no es constante durante su vida, o algunas más complejas según las características de los repuestos.

La demanda promedio de un repuesto en una planta j, puede obtenerse dividiendo la cantidad de ese tipo de repuestos instalados en la máquina, NR, por su vida útil promedio, VUR, tal como se indica en (6). La vida útil del repuesto puede ser diferente en cada sitio.

El problema de la ubicación de almacenes y los volúmenes de inventario
Al combinar de forma simultánea los problemas de ubicación de almacenes y del volumen de inventario, se obtiene un problema mucho más complejo que los presentados. En este último se pretende obtener tanto la ubicación de almacenes como los volúmenes asociados de inventarios, de tal forma que se minimice la suma de los cuatro tipos de costos enunciados. Para este problema no se conoce solución analítica directa y es necesario recurrir a métodos heurísticos para su solución. A continuación se realiza un análisis comparativo de dos técnicas de solución. La primera, propuesta por los autores y llamada Búsqueda Exhaustiva con Poda, BEP, donde se ejecuta una búsqueda exhaustiva del espacio de soluciones, utilizando heurísticas para evitar regiones de soluciones dominadas donde no puede ocurrir el mínimo. La segunda explora la técnica de optimización conocida como Búsqueda Tabú (Glover & Laguna, 1997).

Para ambas estrategias de solución, se asume que todos los repuestos suministrados a una planta van desde un solo almacén, es decir, se asigna a cada planta un almacén. No se considera la posibilidad de suministrar diferentes repuestos a una planta desde almacenes diferentes, ya que, aunque podría obtenerse una solución mejor, el algoritmo requiere una cantidad mayor de recursos computacionales, al aumentarse el tamaño el espacio de soluciones.

El planteamiento general del problema.
En resumen, el problema a resolver es:

Minimizar C1 + C2 + C3 + C4 Sujeto a:

  • Restricciones de exigencia de nivel de confianza de cada repuesto en cada sitio de oferta
  • Restricciones de exigencia de atender cada sitio de demanda sólo desde un sitio de oferta, donde las variables tienen 3 subíndices correspondientes al sitio de oferta, el sitio de demanda y el repuesto.

3 SOLUCIÓN MEDIANTE LA BÚSQUEDA EXHAUSTIVA CON PODA DE SOLUCIONES DOMINADAS (BEP)

Determinación de la prioridad de los almacenes para atender cada sitio de demanda
Se asume que cada sitio de demanda es atendido únicamente por un almacén; por lo tanto, es posible determinar los costos C2 y C3 para cada sitio de demanda si este fuese atendido por cada uno de los almacenes.

Como resultado se obtendría, para cada sitio de demanda, el orden en que deberían ser considerados los almacenes para que fuesen asignados a dicho sitio, de acuerdo con la suma de costos asignados. De esta forma, cada sitio de demanda tendría un proveedor natural de repuestos, que corresponde al almacén cuya suma de costos C2 y C3 sea mínima.

Los costos de transporte, C2, se calculan como la sumatoria, sobre el conjunto de repuestos, de la demanda promedio del repuesto por el costo unitario de transporte entre el almacén y el sitio de demanda.

Determinación de la importancia de los almacenes
Para hacer esta clasificación, que mide la importancia relativa de cada almacén, se utiliza una heurística denominada costo de oportunidad del almacén, la cual mide el incremento en los costos del sistema si el almacén no existiese.

Para su determinación, se estima el total de los costos C2 y C3 considerando todos los almacenes; posteriormente, para cada almacén existente, se recalcula el total de estos costos como si dicho almacén no existiese. La diferencia entre estos dos costos corresponde al costo de oportunidad de dicho almacén.

Valores altos en este costo indican que se requiere que el almacén sea seleccionado, ya que no existen almacenes sustitutos con costos similares, mientras que valores bajos indican que éste puede ser sustituido por otro debido a que hay almacenes que podrían reemplazarlo con un costo similar.

Representación de la solución
La solución del problema se representa mediante una cadena de variables binarias, donde cada una de ellas, esta asociada a uno de los almacenes. Un almacén se considera seleccionado si su variable asociada tiene un valor de uno, y no seleccionado en caso contrario.

Los almacenes son ordenados en la cadena binaria de manera descendente por su costo de oportunidad, de tal forma, que los almacenes con costos de oportunidad más altos se encuentran más a la izquierda de la cadena, mientras que aquellos que tienen costos más bajos están más a la derecha.

Al realizarse la BEP sobre el espacio de soluciones del problema para alcanzar el óptimo global, este ordenamiento no tiene ningún efecto sobre el desempeño del algoritmo. Sin embargo, si se restringe la solución, a que debe permanecer un número mínimo, k, de almacenes seleccionados, dicha heurística permite considerar como siempre seleccionados los almacenes correspondientes a las primeras k variables binarias. De esta manera no se consideran todas las posibles combinaciones de los n almacenes, sino que se reduce el espacio de soluciones a un tamaño menor, es decir (n-k).

El valor de k se determina de modo que su complemento (n-k), que representa el número de almacenes que pueden ser seleccionados o no (toman el valor cero o uno) permita un tiempo razonable de la ejecución del algoritmo.

Para este caso, tal como se observa en la Figura 1 más adelante, un valor de n-k igual a 15 llevaría a un tiempo de ejecución aproximado de 14 segundos. Hasta este valor el problema se puede resolver utilizando la BEP. De este valor hacia arriba el crecimiento del tiempo de ejecución es exponencial y es aquí donde se justifica la Búsqueda Tabú.

Algoritmo de Solución
El algoritmo de solución es un proceso iterativo en el cual se parte de que todos los almacenes se encuentran seleccionados, lo cual equivale a tener inicialmente una cadena binaria con tantos valores iguales a uno como almacenes tiene el problema. En cada iteración se considera una nueva combinación de almacenes seleccionados. Para obtener la siguiente combinación, se considera el número binario inmediatamente inferior al representado por la solución actual. Para ello, se resta la unidad al número binario actual y se procede al cálculo de los costos totales de la nueva solución. Esta nueva solución es almacenada si su costo total es menor que el mínimo encontrado hasta el momento, y corresponderá a la solución del problema.

Para n almacenes, el algoritmo recorrerá 2n soluciones. Cuando n es un valor pequeño, como por ejemplo 15, el algoritmo evaluará 215 = 32768 soluciones, que es un número relativamente pequeño teniendo en cuenta la capacidad de cómputo de las máquinas actuales. Sin embargo, para valores mayores, tal como 30 almacenes, el algoritmo recorrerá 230 = 1073 millones de soluciones, lo cual es un número muy alto aún para los procesadores actuales.

Estimación de los costos de transporte y de falla de los repuestos.
Los costos de transporte y de falla de los repuestos pueden ser obtenidos de los cálculos realizados en el numeral 3.2, ya que sólo es necesario determinar para cada sitio de demanda, cual es el almacén menos costoso que se encuentra abierto.

Estimación de los costos de conservación de los inventarios
Una vez se ha determinado para cada sitio de demanda el almacén que debe atenderlo, se procede a calcular la demanda total de repuestos que tiene cada almacén, como la suma de las demandas de todos los sitios que éste atiende.

Posteriormente, para determinar el nivel de inventario que debe tener cada almacén, por cada repuesto, es necesario definir un nivel de confianza en la atención, esto es, la probabilidad de encontrar el repuesto en inventario cuando éste sea requerido por cualquiera de los sitios de demanda que atiende el correspondiente almacén.

El nivel de inventario se calcula como la cantidad de repuestos para la cual, dada una distribución de probabilidades, se excede la confiabilidad requerida. El costo de inventarios se calcula entonces usando (5).

Estimación de los costos fijos de los almacenes
Los costos fijos de operación de los almacenes, C1, se obtienen al sumar sobre el conjunto de almacenes seleccionados, el costo fijo de cada uno de ellos.

Poda del árbol de búsqueda
Durante el proceso de búsqueda se conserva siempre la solución óptima encontrada de modo que cuando se está calculando una nueva solución, correspondiente a una combinación diferente de almacenes, se verifica si la suma de costos parciales es mayor o igual a la mejor encontrada hasta el momento. Si se detecta esta condición, la solución parcialmente evaluada se descarta como una solución dominada.

Reducción heurística del espacio solución
Cuando el número de almacenes a considerar es alto, es posible limitar la búsqueda a los almacenes que tienen un costo de oportunidad bajo. Para ello, simplemente es necesario considerar que los primeros k almacenes siempre serán seleccionados, es decir, aquellos con costo de oportunidad más alto.

Optimización desde el punto de vista computacional
Ya que el algoritmo propuesto es intensivo en cálculos, es necesario hacer consideraciones desde el punto de vista de la optimización.

Puesto que el recorrido de las soluciones se hace teniendo en cuenta la sucesión de los números binarios, es necesario en cada paso recalcular completamente los volúmenes de inventario de cada repuesto en cada almacén seleccionado.

Sin embargo, es posible realizar este recorrido en una secuencia diferente sin afectar la solución obtenida. Esta secuencia de recorrido corresponde a los códigos Gray, los cuales son números binarios que se caracterizan por cambiar únicamente en un bit de un número al siguiente. Esto posibilita recalcular únicamente los inventarios de aquellos almacenes que sufren una modificación en la demanda, con el consiguiente ahorro en tiempo de cómputo.

4 SOLUCIÓN USANDO BÚSQUEDA TABÚ

La Búsqueda Tabú (BT) es una técnica de optimización heurística inspirada en los principios generales de la Inteligencia Artificial (Glover & Laguna, 1997), la cual es considerada como un metaheurístico que guía un proceso de búsqueda local sobre diferentes regiones del espacio de soluciones.

Este, se considera un proceso inteligente de búsqueda ya que incorpora los conceptos de memoria adaptativa y exploración responsable. La memoria adaptativa se refiere al no uso de un proceso determinístico para alcanzar el siguiente punto del espacio solución; no se refiere a un proceso aleatorio o semialeatorio usado por como otras técnicas como el Temple Simulado o los Algoritmos Evolutivos. El concepto de exploración responsable se refiere a la suposición de que una mala selección estratégica puede dar más información que una buena selección realizada al azar.

Representación de la solución
La Búsqueda Tabú, BT, usa una cadena binaria que representa la solución al problema de optimización. En este caso particular, la representación se realiza de forma idéntica a la planteada para el método de Búsqueda Exhaustiva con Poda, BEP.

Vecindad de la Solución
La vecindad de la solución actual, N(x), es el conjunto de todas las soluciones alcanzables desde x, a partir de un movimiento elemental. Una forma tradicional de obtener una solución vecina de x es rotar uno de sus bits (cambiar su valor). Esta es la considerada en el presente trabajo.

Uno de los mecanismos para forzar la exploración de nuevas regiones del espacio de soluciones, es bloquear ciertos bits de la solución actual durante un número dado de ciclos del algoritmo, lo cual hace que a partir de la vecindad N(x) de la solución actual x, solo sea posible alcanzar un subconjunto de ellos, N*(x).

Optimización Local
Cuando se inicia el proceso de optimización, BT actúa como un algoritmo de descenso en la dirección del gradiente, así: de la vecindad de x, N(x), se escoge la solución, x*, que cause la mayor disminución del valor de la función objetivo, (en un problema de minimización) respecto a x. Este es el nuevo punto óptimo, y el bit que fue rotado para alcanzar el nuevo punto se hace tabú durante un número dado de iteraciones; esto es, para la obtención de la nueva vecindad, N(x*), los bits catalogados como tabú no pueden ser rotados.

Durante el proceso, mientras las nuevas soluciones generan nuevos bits tabú, aquellos bits tabú más viejos van perdiendo este status.

El proceso continúa hasta que no sea posible encontrar dentro de la vecindad de x, una solución que tenga un valor mejor que el del propio x.

Memoria de Largo Plazo
Cada vez que se alcanza una nueva solución mejor que la anterior, se introduce en una memoria de largo plazo que almacena los puntos recorridos por el algoritmo.

Esta memoria tiene dos objetivos, en primer lugar, cuando se evalúa la vecindad de una solución, se eliminan de ella, aquellas soluciones que se encuentran en la memoria de largo plazo, obligando a que el algoritmo recorra nuevas regiones del espacio solución. En segundo lugar, una vez se ha alcanzado un punto de mínima, el proceso es reiniciado usualmente a partir de la selección aleatoria de una de las soluciones almacenadas en la memoria de largo plazo. Otra forma de obtener este punto de reinicio, es generar una solución donde todas sus posiciones se generan de forma aleatoria.

Evaluación de la función de costo
Ya que la BT usa la misma representación de la solución por BEP, los costos son evaluados de la misma forma que para ella.

5 CASO DE APLICACIÓN

Para mostrar la viabilidad del modelo y del método de solución, se utilizó un conjunto de problemas de prueba correspondientes a varios casos, así: 10 almacenes y 10 plantas de producción, 11 almacenes y 11 plantas de producción, y así sucesivamente hasta alcanzar un total de 30 almacenes y 30 plantas de producción.

Cada uno de los problemas fue solucionado por el método de BEP y por el método de Búsqueda Tabú, en la misma máquina. Se registraron los tiempos requeridos (en horas: minutos: segundos) para alcanzar la solución, así como los valores óptimos encontrados. Los costos óptimos y los tiempos requeridos para alcanzar la solución se presentan en la Tabla 1 y en la Figura 1.

Tabla 1. Tiempo total requerido para encontrar la solución y costo óptimo asociado para diferentes tamaños del problema
Table 1. Total time required to final the solution and associated optimal cost from different problem sizes


Figura 1.
Tiempos requeridos para alcanzar una solución por cada uno de los métodos.
Figure 1. Time required to achieve a solution of the each one methods

Para un número inferior a 10 almacenes, la BEP es más rápida que la BT aunque la diferencia es de unos pocos segundos. A partir de 12 almacenes, la BT muestra su eficiencia en el recorrido del espacio de soluciones, siendo siempre más eficiente que la BEP.

Para un número de 17 almacenes, la BE requiere más de una hora de procesamiento, mientras que la BT converge en menos de tres minutos. Para un número superior a 20 almacenes se hace inviable la solución usando BEP debido a los tiempos de procesamiento requeridos.

Desde el punto de vista de calidad de la solución, ambos métodos convergen para una cantidad de almacenes igual o inferior a 16. A partir de este punto, la BT encuentra subóptimos, que en términos prácticos no son muy distantes del óptimo global encontrado usando la BEP.

Ya que la BT no garantiza encontrar el óptimo global, el proceso de reinicio en el espacio de soluciones se realiza de la siguiente forma: en la fase inicial, se parte de un vector binario de ceros con un costo infinito, para lograr que el algoritmo de BT considere todas las soluciones con un único almacén seleccionado, y continúe su recorrido del espacio de soluciones a partir de aquella que minimiza el costo total. En el primer reinicio, se parte de un vector solución de unos, indicando que se inicia con todos los almacenes seleccionados. Los siguientes N reinicios se realizan seleccionando un punto de la memoria de largo plazo. Finalmente, los últimos N reinicios se realizan de puntos generados aleatoriamente.

6 CONCLUSIONES

En este artículo se ha explorado el problema real de la ubicación de almacenes, determinación de niveles de inventarios, y transporte de forma simultanea, mostrando como el problema real puede ser planteado como un modelo matemático. Igualmente se ha propuesto una metodología de solución que combina, simulación y optimización. La metodología propuesta fue implementada en un programa de computador, y ha permitido encontrar soluciones a varios problemas de prueba. Para un problema con diez almacenes y diez sitios de demanda, con veinte repuestos en cada sitio de demanda, el modelo encuentra una solución en unos dos minutos, usando un procesador Pentium III de 550 MHz, mientras que para quince almacenes y quince sitios de demanda, se requieren unos diez minutos de procesamiento. Cuando la cantidad de sitios de demanda y almacenes se aumenta a veinte, se requieren dos horas de procesamiento. Para problemas mayores no es práctico usar la técnica BEP, considerando que todos los almacenes pueden ser seleccionados. En este punto, la heurística para reducción del espacio de soluciones se hace muy valiosa para reducir el tamaño del problema, pudiendo obtenerse soluciones cercanas al óptimo global en tiempos inferiores.

REFERENCIAS

[1] Bazaraa, M., Jarvis, J. & Sherall, H. 1990. Linear Programming and Network Flows. 2nd Ed. Wiley , Nueva York.         [ Links ]
[2] Dantzing, G. 1963. Linear Programming and Extensions. Princenton University Press, Princenton, N.J.         [ Links ]
[3] Davis, K. R. & McKeown, P. G. 1986. Modelos Cuantitativos para Administración. Grupo Editorial Iberoamericana.         [ Links ]
[4] Glover, F. & Laguna, M. 1997. Tabú Search. Kluwer Academic Publishers. London         [ Links ]
[5] Murty, K. 1992. Network Programming. Prentice Hall, Upper Saddle River, N.J.         [ Links ]
[6] Nemhauser, G. & Wolsey, L. 1988. Integer and Combinatorial Optimization. Wiley, Nueva York.
[7] Taha, H.. 1978. Programming. Capítulo II-1 Handbook of Operations Research. J. Moder y S. Elmaghraby (editores). Van Nostrand Reinhold. Nueva York.        [ Links ]

Creative Commons License All the contents of this journal, except where otherwise noted, is licensed under a Creative Commons Attribution License