scieee AI-readable full text Open interactive document viewer

Coordinación de políticas de precio y reposición para artículos con pérdida de valor

Quirós Prieto, María

Abstract

Los modelos de gestión de inventarios suelen partir de una serie de suposiciones que en numerosas ocasiones distan de los casos de estudio reales, como podrían ser considerar la demanda independiente del precio del bien o que la mercancía pueda permanecer en el almacén indefinidamente. Además, lo común es considerar que los bienes tienen una vida útil infinita, algo que no siempre ocurre, puesto que son muchos los productos perecederos o que pierden propiedades o el interés de los consumidores con el tiempo. No obstante, en las últimas décadas, algunos investigadores han trabajado en modelos que sí tienen en cuenta el deterioro que experimentan muchos productos. Esta literatura ha ido aumentando con los años y los modelos propuestos son cada vez más completos y complejos. Sin embargo, en todos ellos se considera que el deterioro se comienza a producir desde el momento en que se produce el artículo, lo cual no siempre es así. No es hasta entrados los 2000 cuando se propone un primer modelo en el que se considera un periodo de tiempo en el que el producto no se estropea y mantiene su calidad y propiedades. Este fenómeno fue definido como “deterioro no instantáneo” por los autores Wu, Ouyang & Yang en su artículo Coordinating replenishment and pricing policies for non-instantaneous deteriorating items with price-sensitive demand (2009), en el que está basado este trabajo. El modelo propuesto tiene en cuenta de forma simultánea, además, dos situaciones reales: considerar una demanda elástica al precio y la coordinación de políticas de precio y reposición. Finalmente proponen un algoritmo matemático y varios ejemplos ilustrativos. Este Trabajo Fin de Máster tiene como objetivo la programación de dicho modelo en Python, comprobar los resultados expuestos y obtener una herramienta que permita determinar la política óptima de precios y reposición en casos similares que se puedan encontrar en la vida real.

Full text

i Equation Chapter 1 Section 1 Trabajo Fin de Máster Máster Universitario en Ingeniería Industrial Coordinación de políticas de precio y reposición para artículos con pérdida de valor Dpto. de Organización Industrial y Gestión de Empresas II Escuela Técnica Superior de Ingeniería Universidad de Sevilla Autor: María Quirós Prieto Tutor: Jesús Muñuzuri Sanz Sevilla, 2022 ii iii Trabajo Fin de Máster Máster Universitario en Ingeniería Industrial Coordinación de políticas de precio y reposición para artículos con pérdida de valor Autor: María Quirós Prieto Tutor: Jesús Muñuzuri Sanz Catedrático Dpto. de Organización y Gestión de Empresas II Escuela Técnica Superior de Ingeniería Universidad de Sevilla Sevilla, 2022 iv v Trabajo Fin de Máster: Coordinación de políticas de precio y reposición para artículos con pérdida de valor Autor: María Quirós Prieto Tutor: Jesús Muñuzuri Sanz El tribunal nombrado para juzgar el Trabajo arriba indicado, compuesto por los siguientes miembros: Presidente: Vocales: Secretario: Acuerdan otorgarle la calificación de: Sevilla, 2022 El Secretario del Tribunal vi vii A mi abuelo Juan. viii ix AGRADECIMIENTOS En primer lugar, quiero dar las gracias a mi tutor en este Trabajo Fin de Máster, D. Jesús Muñuzuri Sanz, a quien considero uno de los mejores profesores de esta Escuela. Su manera de transmitir sus conocimientos y el compromiso que muestra con sus alumnos, contribuyeron a que me decidiese por la especialidad de Organización y Producción durante el Grado. Supone una gran satisfacción para mí poner fin a este Máster y a la etapa universitaria con este proyecto dirigido por él. Aunque me habría gustado que nuestras conversaciones sobre este trabajo hubiesen sido presenciales, quiero agradecerle todo el tiempo invertido en cada correo, en cada duda, y también su paciencia y comprensión con los tiempos que he necesitado. Sin su apoyo no habría sido posible concluir este proyecto. Agradecer también a José Ángel Gutiérrez de Ravé Millán sus contribuciones en la parte más temprana de este trabajo y que tanto me sirvieron en el ámbito de la programación en Python. Gracias, de corazón, a mis amigos, los que me ha dado esta Escuela. Nunca dejaré de sentirme afortunada por haber compartido con ellos esta etapa y todas las que vienen y vendrán. Y por supuesto, también a mis amigos de toda la vida, porque a pesar de la distancia, han sido partícipes de cada momento importante. A Carlos, por acompañarme en cada paso y quedarse siempre. Por último, dar las gracias a mi familia, por haber estado conmigo enorgulleciéndose de cada uno de mis éxitos y apoyándome en cada lección que aprender. A mis padres, por ser siempre mi respaldo, mi refugio y mi motor. A mi hermana, por todo lo que hemos crecido y aprendido por el camino. Y en especial, dar las gracias a la persona a la que está dedicado este trabajo: Mi abuelo Juan. Por enseñarme tantas cosas, por animarme a ir “al toro” siempre. Por sentirse orgulloso de mí sin condición. Por quererme tanto y por llevarme siempre por bandera. Sé que, aunque ahora lo haga desde el cielo, me celebra una vez más. xvii ÍNDICE DE FIGURAS Figura 1: Caso 1 (T≥td). 7 Figura 2. Caso 1 (T≤td). 9 Figura 3. Diagrama de flujo del algoritmo. 17 Figura 4. Ejemplo 1: Librerías 19 Figura 5. Ejemplo 1: Función de lectura de datos. 20 Figura 6. Ejemplo 1: Fichero de datos. 20 Figura 7. Ejemplo 1: Función de escritura de resultados. 21 Figura 8. Ejemplo 1: Fichero de resultados. 21 Figura 9. Código Ejemplo 1. 25 Figura 10. Ejemplo 2: Fichero de datos. 26 Figura 11. Ejemplo 2: Fichero de resultados. 26 Figura 12. Código Ejemplo 2. 29 Figura 13. Análisis de Sensibilidad: Fichero de datos. 29 Figura 14. Análisis de Sensibilidad: Resultados. 30 Figura 15. Análisis de Sensibilidad: Variaciones porcentuales. 31 Figura 16. Vectores variación parámetros A, c y h. 31 Figura 17. Triple if para la diferenciación del parámetro incrementado/decremantado. 32 Figura 18. Código Análisis de Sensibilidad. 36 1 1 INTRODUCCIÓN Y OBJETO DEL TRABAJO Los modelos de inventario tradicionales están sujetos al cumplimiento de una serie de condiciones, como que los bienes pueden permanecer almacenados sin límite temporal o el hecho de que la demanda sea independiente del precio del bien. Estos supuestos no siempre pueden considerarse en la vida real. Un caso muy común es el de aquellos bienes que con el paso del tiempo sufren un deterioro gradual de sus propiedades físicas o químicas o simplemente cada vez son menos atractivos para el comprador, al quedar desfasados, pasados de moda o ser sustituidos por nuevos productos con mejores prestaciones o con un diseño más interesante. Como se puede apreciar, el deterioro puede producirse por diferentes motivos:  En el caso de los alimentos, el deterioro va relacionado con que se trata de productos perecederos que tienen fecha de caducidad o consumo preferente. Es bastante común encontrar en los establecimientos ofertas en productos como la carne o el pescado cuya fecha de caducidad está próxima, lo cual vuelve ese producto más atractivo para el cliente, que se plantea elegir ese en lugar de uno con una fecha de caducidad más tardía pudiendo beneficiarse de un descuento en el producto. También ocurre esto con las frutas y verduras, las cuales pueden presentar un deterioro visual cuando han pasado un mayor tiempo en las estanterías, aunque siguen siendo aptas para el consumo. En estos casos ocurre algo similar, es posible encontrar descuentos en estos productos, ya que al vendedor le interesa, en cualquier caso, darle salida con un precio que siempre es mejor que perder la venta por caducidad del producto.  En el caso de la electrónica, el deterioro va más ligado a la obsolescencia o a que los productos van siendo continuamente sustituidos por nuevos modelos con mejores prestaciones que resultan más atractivos para el comprador. Para que las versiones anteriores sigan despertando interés en el consumidor, se suelen ofertar a precios más bajos.  En el caso de la moda, el deterioro está más relacionado con el fin de temporada o que las prendas pasen de moda. Al final de cada temporada suele haber un periodo de rebajas, en el que se bajan los precios a una gran cantidad de productos, o bien, se vuelven a poner a la venta artículos de anteriores temporadas con un precio más ajustado, con la finalidad de dar salida al stock de productos más antiguos que continúan generando costes de almacén. Normalmente, todo producto o bien tiene una vida útil determinada, dándose por hecho que llegará un momento en el que no pueda usarse o consumirse. Normalmente este fin de la vida útil no se da de un momento a otro, sino que los bienes van experimentando algún tipo de “degradación” progresiva. Como se puede observar, y entendiendo el deterioro no solo aplicado a bienes perecederos como se acaba de exponer, son numerosos los ejemplos de mercancías o productos que no mantienen de forma indefinida las características con las que son puestos en el mercado, incluso podría decirse que es más habitual encontrarse con esta casuística que con la de productos que mantienen sus propiedades intactas para siempre. Desde el punto de vista de cualquier comerciante o vendedor, sería interesante estudiar la forma en que podría tratar de dar salida a un stock de productos que, a partir de momento dado, deja de tener las propiedades iniciales con las que se fabricó obteniendo el máximo beneficio posible. En esta línea, Wu, Ouyang & Yang en su artículo Coordinating replenishment and pricing policies for noninstantaneous deteriorating items with price-sensitive demand (2009) desarrollaron un modelo de inventario centrado en bienes que experimentan deterioro con el tiempo y, en particular, bienes en los que ese deterioro no comienza hasta pasado un cierto tiempo desde que son fabricados. Esta cuestión, como se verá en el 2 capítulo siguiente, es lo que diferencia este modelo de los desarrollados hasta la fecha. Además, añade dos situaciones reales, como son una demanda elástica al precio y la idoneidad de coordinar políticas de precio y reposición. En este Trabajo Fin de Master se desarrollará el análisis teórico que lleva a los autores a determinar las políticas de precio y reposición óptimas. Éste parte de la demostración de que, para un precio de venta determinado, el valor óptimo de duración del ciclo de reposición no solo existe, sino que, además, es único. A continuación, se demostrará que existe un único precio de venta que maximiza el beneficio total por unidad de tiempo para una duración del ciclo de reabastecimiento dada. Adicionalmente, se explicará un algoritmo sencillo que los autores proponen y que permite encontrar la solución óptima al problema planteado. Proponen también dos ejemplos numéricos para ilustrar los resultados teóricos y un análisis de sensibilidad de la solución óptima con respecto a los principales parámetros del modelo. El objeto de este TFM es, por un lado, poner en valor la aportación de Wu, Ouyang & Yang (2009) a la literatura sobre modelos de inventario y, por otro, contribuir a su trabajo con la programación en Python del algoritmo que proponen. Los distintos códigos elaborados se utilizan en este proyecto para comprobar los resultados de los dos ejemplos prácticos y el análisis de sensibilidad expuestos en el artículo, aunque podrían aplicarse a la resolución de casos reales similares de productos con deterioro no instantáneo. 3 2 REVISIÓN DE LA LITERATURA Este capítulo tiene como finalidad hacer un recorrido por la literatura que ha tratado de abordar la problemática de la gestión de inventarios de bienes con deterioro desde las primeras aproximaciones realizadas a mediados del siglo XX hasta nuestros días. Resulta imprescindible comenzar mencionando el modelo fundamental y más utilizado en control de inventarios: La Cantidad Económica de Pedido (“Economic Order Quantity”, EOQ), también conocida como Modelo de Wilson, se basa en hallar el punto de pedido para el que se igualan los costes de lanzar un pedido y los costes de mantenimiento del producto, tomando una demanda determinista (constante y conocida). Este modelo, aunque es ampliamente utilizado debido a su sencillez y robustez, presenta algunos inconvenientes, como considerar constantes tanto la demanda como la disminución del inventario, o que no tenga en cuenta roturas de stock ni descuentos por gran volumen. Por supuesto, no trata escenarios en los que se tienen productos con tasa de deterioro. Dado que en la actualidad ha cobrado una gran importancia el control y mantenimiento de inventarios de bienes perecederos, muchos autores han tratado de abordar esta problemática desde mediados del siglo XX. Ghare y Schrader (1963) fueron los primeros en presentar un modelo EOQ para un inventario con deterioro constante y exponencial. Más tarde, la suposición de una tasa constante de deterioro fue relajada por Covert y Philip (1973), formulando un modelo con una tasa variable de deterioro usando una distribución Weibull de dos parámetros, el cual a posteriori fue generalizado por Philip (1974) usando una Weibull de tres parámetros. Shah (1977) amplió el modelo de Philip (1974) considerando posibles roturas de stock. Goyal y Gunasekaran (1995) desarrollaron un modelo integrado de producción-inventario para artículos con deterioro. Lin, Tan y Lee (2000) propusieron un modelo EOQ para este tipo de bienes considerando una demanda variable con el tiempo y roturas de stock. Por último, destacar Goyal y Giri (2001), un recopilatorio de toda la literatura relativa a los bienes con pérdida de valor desde principios de los años 90s. La política de precios es una de las principales estrategias que aplican los vendedores para obtener el máximo beneficio. El precio tiene un impacto directo sobre la demanda, y los modelos con demanda dependiente del precio ocupan un puesto predominante en la literatura sobre inventarios. Cohen (1977) determina el ciclo de reabastecimiento óptimo y el precio, conjuntamente, para un inventario sujeto a una tasa de deterioro constante en el tiempo. Wee (1995) estudió la política conjunta de precios y reposición para un inventario que se deteriora con una elasticidad precio de la demanda que disminuye con el tiempo. Abad (1996) consideró el problema dinámico de fijación de precios y dimensionamiento de lotes de un bien perecedero bajo pedidos parciales. Asumió que la fracción de unidades que se pide es variable y es una función decreciente del tiempo de espera.Wee en sus dos publicaciones posteriores (1997), (1999), amplía el modelo de Cohen (1977) para adaptarlo a una política de aprovisionamiento para artículos con pérdida progresiva de valor con una demanda dependiente del precio y una distribución Weibull para el deterioro con la posibilidad de tener o no en cuenta descuentos por cantidad o volumen. Wee y Law (2001) desarrollan un modelo de inventario para artículos con pérdida de valor con demanda dependiente del precio teniendo en cuenta, además, el valor temporal del dinero (TVM). Abad (2003) considera conjuntamente precio y tamaño de lote bajo condiciones de deterioro, producción finita y entregas parciales. Mukhopadhyay, Mukherjee y Chaudhuri (2004), (2005) reestablecieron el modelo de Cohen (1977) considerando tasa de elasticidad de la demanda y una tasa de deterioro proporcional al tiempo o bien, modelada por una distribución Weibull de dos parámetros, ambas opciones. Chang, Teng, Ouyang y Dye (2006) introdujeron un modelo de inventario con deterioro con una demanda dependiente del tiempo y del precio y entregas parciales. Dye (2007) propone políticas conjuntas de fijación de precio y de pedido para inventarios con deterioro con demanda dependiente del precio. Todos los modelos de inventario para artículos en deterioro que se recogen en la literatura anteriormente mencionada tienen en común el asumir que el deterioro ocurre tan pronto como se produce el artículo y el nivel de inventario se reduce debido a ese deterioro al comienzo de cada ciclo de reabastecimiento. Sin 4 embargo, en la realidad existen muchos bienes cuyo deterioro no se produce hasta pasado un tiempo, es decir, durante un periodo de tiempo determinado mantienen su calidad o condición inicial sin sufrir deterioro alguno. Por ejemplo, las frutas y verduras de primera mano tienen un periodo de tiempo en el que, aunque es corto, mantienen su frescura. Después, algunas unidades de producto comenzarán a estropearse. O en el caso de las prendas de vestir, tampoco se considera que éstas se devalúen desde el principio, sino desde que acaba la temporada. Wu, Ouyang y Yang (2006) definieron este fenómeno como “deterioro no instantáneo”, desarrollando una política de reabastecimiento para artículos con deterioro no instantáneo con una demanda dependiente del nivel de stock, de modo que el coste total de inventario por unidad de tiempo tenga un valor mínimo. También consideraron la posibilidad de tener entregas parciales de mercancía. Este proyecto toma como base el artículo de Wu, Ouyang y Yang (2009), en el cual, se utiliza el modelo de Wu et al. (2006) para artículos con deterioro no instantáneo, aunque coordinando políticas de fijación de precio y reaprovisionamiento con una demanda sensible al precio. El concepto de “deterioro no instantáneo” que definen estos autores despertó el interés de la comunidad investigadora, siendo en la década siguiente una cuestión sobre la que se continuó trabajando, desarrollándose nuevos modelos de gestión de inventarios que asumían diversas hipótesis. Rezagholifam, Sadjadi, Heydari y Karimi (2022) realizan un recorrido por la literatura sobre este tipo de modelos de inventario desde Wu et al. (2009) hasta la actualidad. Uno de los más recientes es el de Patel y Gor (2019) quienes presentan un modelo para artículos con deterioro no instantáneo donde la tasa de deterioro viene definida por una Weibull de tres variables. Volviendo atrás en el tiempo, casi paralelamente a Wu et al. (2009), Yang, Ouyang y Wu (2009) propusieron un modelo de inventario para artículos con deterioro no instantáneo con demanda dependiente del precio que además consideraba entregas parciales. Posteriormente, fue propuesto un modelo aún más completo que no solo tenía en cuenta las hipótesis del anterior, sino que, además, también permitía escasez de artículos y retrasos en los pagos (Maihami y Abadi (2012); Maihami y Kamalabadi (2012)). En relación con la coordinación de políticas de precios y reposición para los sistemas de inventario de artículos con deterioro, algunas investigaciones interesantes han sido realizadas por Hsieh y Dye (2010), Vaghela y Shah (2020) y Wang y Huang (2014). Otras contribuciones interesantes a la literatura de este tipo de modelos de inventarios han sido el estudio de los efectos de:  La inversión en tecnología de conservación de los artículos (Dye, C. Y., 2013).  La posibilidad de que algunos productos presenten imperfecciones de calidad desde un primer momento (Mahmoudinezhad, M., Ghoreishi, M., Mirzazadeh, A., & Ghodratnama, A., 2014).  La inflación (Mahmoudinezhad, M., Ghoreishi, M., Mirzazadeh, A., & Ghodratnama, A., 2014), (Ghoreishi, M., Weber, G. W., & Mirzazadeh, A., 2015), (Shaikh, A. A., Mashud, A. H. M., Uddin, M. S., & Khan, M. A. A., 2017).  Considerar varios almacenes (Tiwari, S., Cárdenas-Barrón, L. E., Khanna, A., & Jaggi, C. K., 2016), (Khan, M. A. A., Shaikh, A. A., Panda, G. C., & Konstantaras, I., 2019a).  Considerar diferentes tasas de deterioro (Mashud, A., Khan, M., Uddin, M., & Islam, M., 2018). Por su parte, la aportación de Rezagholifam, Sadjadi, Heydari y Karimi (2022) es la de considerar cambios de precio durante el horizonte de planificación, algo a lo que no se había prestado atención anteriormente. Hace ya casi un siglo de los primeros artículos que se adentraban en este campo de la gestión de inventarios de productos que sufren deterioro o merman sus cualidades con el paso del tiempo. Las publicaciones y aportaciones anteriormente mencionadas son sólo una parte de la literatura existente hasta la fecha sobre esta temática que, como se ha visto, continúa despertando el interés de la comunidad investigadora. 5 3 HIPÓTESIS Y NOTACIÓN Como se ha explicado anteriormente, el objetivo principal del modelo de Wu et al. (2009) es determinar las políticas óptimas de precio y reposición que permitan maximizar el beneficio total por unidad de tiempo en el caso de bienes que se deterioran aunque no desde el instante de su puesta en el mercado. Se tienen en cuenta de forma simultánea dos situaciones reales:  Demanda elástica al precio. Es decir, cómo varía porcentualmente la cantidad demandada ante cambios porcentuales en el precio.  Coordinación de políticas de precio y reposición. La función objetivo será maximizar el beneficio. Además, se completa el modelo incluyendo el caso en que el tiempo del ciclo de reposición es menor o igual al periodo de tiempo que el artículo permanece sin sufrir deterioro. Recapitulando, el modelo matemático tendrá como base los siguientes supuestos:  Se considera un único artículo con deterioro no instantáneo.  La tasa de reposición es infinita (el pedido se entrega de una vez) y el plazo de entrega es cero (es decir, la entrega es inmediata).  La demanda del producto es elástica y función del precio de venta: 𝐷(𝑝)=𝛼·𝑝−𝛽 Donde α (>0) es el factor de escala y β (>1) es el índice de elasticidad del precio.  No se permiten roturas de stock.  Durante un periodo determinado, 𝑡𝑑, no se produce deterioro. Al final de dicho periodo, el inventario se deteriora a una tasa constante 𝜃.  Durante el periodo considerado no se producen sustituciones ni reparaciones de los artículos dañados.  El horizonte temporal es infinito. A continuación, se detallan los parámetros y símbolos que se usarán en adelante: A = coste de pedido. c = coste de compra unitario. h = coste unitario de almacenamiento por unidad de tiempo. p = precio unitario de venta. T = tiempo de ciclo de reposición o reabastecimiento. Q = cantidad de pedido. 6 θ = tasa de deterioro. 𝐼1(𝑡) = nivel de inventario en el instante 𝑡 ( 0 ≤ 𝑡 ≤ 𝑡𝑑 ) en el que el producto no experimenta deterioro. 𝐼2(𝑡) = nivel de inventario en el instante 𝑡 ( 𝑡𝑑 ≤ 𝑡 ≤ 𝑇 ) en el que el producto experimenta deterioro. 𝑍(𝑝,𝑇) = beneficio total por unidad de tiempo del sistema de inventario. 𝑝∗ = precio de venta unitario óptimo. 𝑇∗ = tiempo óptimo del ciclo de reposición. 𝑄∗ = cantidad óptima de pedido. 𝑍∗ = beneficio total óptimo por unidad de tiempo, es decir, 𝑍 ∗= 𝑍(𝑝∗,𝑇∗). 7 4 FORMULACIÓN DEL MODELO Se considera un problema de reposición de un único bien que experimenta un deterioro no instantáneo. Al comienzo de cada ciclo llegan al sistema de inventario 𝑄 unidades del bien. Existen dos casos posibles en función del valor de 𝑇 y 𝑡𝑑: Caso 1: 𝑻≥𝒕𝒅 En este caso, el tiempo de ciclo de reposición, 𝑇, es mayor o igual que el periodo en el que el bien permanece sin sufrir deterioro alguno, 𝑡𝑑. Durante el intervalo de tiempo [0,𝑡𝑑], el nivel de inventario disminuye debido únicamente a la demanda variable. A partir del instante 𝑡=𝑡𝑑, el bien comienza a deteriorarse, por lo que en el intervalo [𝑡𝑑,𝑇], el inventario se reduce no solo debido a la demanda sino también a que los productos van experimentando una pérdida de calidad. Este proceso se repite en el tiempo. Figura 1: Caso 1 (𝑇≥𝑡𝑑). En la Figura 1 se observa lo descrito en el párrafo anterior. En el intervalo [0,𝑡𝑑] el inventario decrece debido exclusivamente a la demanda variable. Por ello, la ecuación diferencial que representa el nivel de inventario en ese periodo es: 𝑑𝐼1(𝑡) 𝑑𝑡 =−𝐷(𝑝), 0<𝑡<𝑡𝑑 (1) Resolviendo la Ecuación (1) teniendo en cuenta la condición de contorno 𝐼1(0)=𝑄 queda: 𝐼1(𝑡)=𝑄−𝐷(𝑝)𝑡, 0≤𝑡≤𝑡𝑑 (2) También se observa cómo en el intervalo [𝑡𝑑,𝑇], el inventario disminuye a causa tanto de la demanda como del deterioro de los productos. En este caso, la ecuación diferencial que representa el nivel de inventario es: 𝑑𝐼2(𝑡) 𝑑𝑡 +𝜃𝐼2(𝑡)=−𝐷(𝑝), 𝑡𝑑<𝑡<𝑇 (3) 8 Resolviendo la Ecuación (2) teniendo en cuenta la condición de contorno 𝐼2(𝑇)=0 queda: Para garantizar la continuidad de la función 𝐼(𝑡) en 𝑡=𝑡𝑑, se igualan las ecuaciones (2) y (4): 𝐼1(𝑡𝑑)=𝐼2(𝑡𝑑)=𝑄−𝐷(𝑝)𝑡𝑑=𝐷(𝑝) 𝜃[𝑒𝜃(𝑇−𝑡𝑑)−1], Lo que implica que la cantidad de pedido en cada ciclo es: 𝑄=𝐷(𝑝) 𝜃[𝑒𝜃(𝑇−𝑡𝑑)−1]+𝐷(𝑝)𝑡𝑑 (5) Sustituyendo la Ecuación ¡Error! No se encuentra el origen de la referencia. en la (2): 𝐼1(𝑡)=𝐷(𝑝) 𝜃[𝑒𝜃(𝑇−𝑡𝑑)−1]+𝐷(𝑝)(𝑡𝑑−𝑡), 0≤𝑡≤𝑡𝑑 (6) Por otra parte, el coste total de inventario y los ingresos por ventas por ciclo se componen de los siguientes cuatro elementos: i. El coste de pedido es A. ii. El coste de almacenamiento del inventario: ℎ[∫ 𝐼1(𝑡)𝑑𝑡 𝑡𝑑 0+∫𝐼2(𝑡)𝑑𝑡 𝑇 𝑡𝑑] =ℎ𝐷(𝑝){𝑡𝑑 𝜃[𝑒𝜃(𝑇−𝑡𝑑)−1]+𝑡𝑑2 2+1 𝜃2[𝑒𝜃(𝑇−𝑡𝑑)−𝜃(𝑇−𝑡𝑑)−1]} (7) iii. El coste de compra: 𝑐𝑄=𝑐𝐷(𝑝) 𝜃[𝑒𝜃(𝑇−𝑡𝑑)−𝜃(𝑇−𝑡𝑑)−1]+𝑐𝐷(𝑝)𝑇 (8) iv. Los ingresos por ventas: 𝑝∫𝐷(𝑝)𝑑𝑡 𝑇 0=𝑝𝐷(𝑝)𝑇 (9) Con todo, el beneficio total por unidad de tiempo (denotado por 𝑍1(𝑝,𝑇)) viene dado por: 𝐼2(𝑡)=𝐷(𝑝) 𝜃[𝑒𝜃(𝑇−𝑡)−1], 𝑡𝑑≤𝑡≤𝑇 (4) 15 𝑑2𝑍2(𝑝,𝑇2∗) 𝑑𝑝2|𝑝=𝑝2=(1−𝛽)𝐷(𝑝2) 𝑝2<0 Así, se tiene que 𝑝=𝑝2 es la solución óptima que maximiza 𝑍2(𝑝,𝑇2∗). Es decir, se tiene el siguiente resultado. Lema 4: Para un valor de 𝑇2∗ tal que 𝑇2∗∈(0,𝑡𝑑], el beneficio total por unidad de tiempo 𝑍2(𝑝,𝑇2∗) tiene un único máximo global en el punto 𝑝=𝑝2, que viene definido por la Ecuación (19). Combinando los Lemas 1 y 3: Teorema 1: Para un valor de 𝑝 dado, se tiene: (a) Si ∆(𝑝)>0, el valor óptimo para el tiempo de ciclo de reposición es 𝑇1. (b) Si ∆(𝑝)<0, el valor óptimo para el tiempo de ciclo de reposición es 𝑇2. (c) Si ∆(𝑝)=0, el valor óptimo para el tiempo de ciclo de reposición es 𝑡𝑑. Demostración: Se deduce directamente de los Lemas 1 y 3 y del hecho de que 𝑍1(𝑝,𝑡𝑑)=𝑍2(𝑝,𝑡𝑑). Observación: Cuando ∆(𝑝)≡2𝐴−ℎ𝑡𝑑2𝐷(𝑝)<0, es decir, ℎ𝑡𝑑2𝐷(𝑝) 2>𝐴 (el coste total de almacenamiento durante el periodo de tiempo del ciclo de reposición en el que no se produce deterioro es mayor que el coste de pedido) el distribuidor venderá todo su stock antes de que el producto comience a perder calidad. Visto todo lo anterior, se puede establecer el siguiente algoritmo que permite obtener la solución óptima (𝑝∗,𝑇∗) del problema estudiado. Algoritmo: Paso 1: Se comienza con 𝑗=0 y tomando el valor inicial de 𝑝𝑗 como 𝑝𝑗=𝑐. Paso 2: Se calcula ∆(𝑝𝑗)=2𝐴−ℎ𝑡𝑑2𝐷(𝑝𝑗) para un valor dado de 𝑝𝑗. Paso 2.1: Si ∆(𝑝𝑗)>0, determinar el valor de 𝑇1,𝑗 resolviendo la Ecuación (12). Sustituir 𝑇1,𝑗 en la Ecuación ¡Error! No se encuentra el origen de la referencia. para obtener el valor correspondiente del precio de venta unitario: 𝑝1,𝑗+1. Los valores del precio unitario y el tiempo de ciclo de reposición se actualizan a los calculados: 𝑝𝑗+1=𝑝1,𝑗+1 y 𝑇𝑗=𝑇1,𝑗. Ir al Paso 3. Paso 2.2: Si ∆(𝑝𝑗)<0, determinar el valor de 𝑇1,𝑗 resolviendo la Ecuación (17). Sustituir 𝑇2,𝑗 en la Ecuación (19) para obtener el valor correspondiente del precio de venta unitario: 𝑝2,𝑗+1. Los valores del precio unitario y el tiempo de ciclo de reposición se actualizan a los calculados: 𝑝𝑗+1=𝑝2,𝑗+1 y 𝑇𝑗=𝑇2,𝑗. Ir al Paso 3. Paso 2.3: Si ∆(𝑝𝑗)=0, igualar 𝑇1,𝑗 (o 𝑇2,𝑗) a 𝑡𝑑 y sustituir el valor en las Ecuaciones (14) ó (19) para obtener el valor correspondiente del precio de venta unitario: 𝑝1,𝑗+1 (o 𝑝2,𝑗+1). Los valores del precio unitario y el tiempo de ciclo de reposición se actualizan a los calculados: 𝑝𝑗+1=𝑝1,𝑗+1 y 𝑇𝑗=𝑇1,𝑗+1. Ir al Paso 3. Paso 3: Si la diferencia entre 𝑝𝑗 y 𝑝𝑗+1 es lo suficientemente pequeña, |𝑝𝑗−𝑝𝑗+1|≤10−5, en ese caso se fijan los valores de 𝑝 y 𝑇 como óptimos: 𝑝∗=𝑝𝑗 y 𝑇∗=𝑇𝑗. Así se llega a la solución óptima (𝑝∗,𝑇∗). En otro caso, se incrementa el valor de 𝑗 en 1, 𝑗=𝑗+1 para realizar una nueva iteración, 16 volviendo al Paso 2. Una vez se obtiene la solución óptima (𝑝∗,𝑇∗), es posible determinar el tamaño de lote óptimo 𝑄∗ a partir de la Ecuación (5) y el valor óptimo de la función objetivo, el beneficio, 𝑍∗=𝑍(𝑝∗,𝑇∗), usando las Ecuaciones (10) u (11). Para mayor claridad, se incluye, a continuación, un diagrama de flujo del algoritmo. El capítulo siguiente se centrará en analizar la implementación del algoritmo en Python. 17 Inicio 𝑗=0 ; 𝑝𝑗=𝑐 ∆(𝑝𝑗)=2𝐴−ℎ𝑡𝑑2𝐷(𝑝𝑗) ∆(𝑝𝑗)>0 Fin 𝑇1,𝑗 según Ecuación (12) 𝑝1,𝑗+1 según Ecuación (14) ∆(𝑝𝑗)<0 𝑇2,𝑗 según Ecuación (17) 𝑝2,𝑗+1 según Ecuación (19) 𝑝𝑗+1=𝑝1,𝑗+1 ; 𝑇𝑗=𝑇1,𝑗 𝑝𝑗+1=𝑝2,𝑗+1 ; 𝑇𝑗=𝑇2,𝑗 𝑇𝑗=𝑡𝑑 𝑝1,𝑗+1 según Ecuación (14) ó (19) 𝑝𝑗+1=𝑝1,𝑗+1 ; 𝑇𝑗=𝑇1,𝑗+1 |𝑝𝑗−𝑝𝑗+1|≤10−5 𝑝 ∗ =𝑝𝑗 ; 𝑇 ∗ =𝑇𝑗 𝑗=𝑗+1 SÍ SÍ SÍ NO NO (∆(𝑝𝑗)=0) NO Figura 3. Diagrama de flujo del algoritmo. 19 6 PROGRAMACIÓN DEL ALGORITMO Como se indicaba al final del capítulo anterior, la programación del algoritmo se lleva a cabo en Python. Se opta por este lenguaje porque actualmente es uno de los lenguajes de programación más extendidos, lo cual permite encontrar una gran cantidad de material de ayuda en la red, además de contar con una documentación oficial muy extensa y en constante actualización. Python es un lenguaje muy intuitivo gracias a que su sintaxis es más clara y limpia que la de otros lenguajes y tiene la gran ventaja de ser multiplataforma, algo que podría ser útil ya que permitiría hacer uso del código generado en otros sistemas operativos. Al ser un lenguaje interpretado, es suficiente con que el sistema integre un intérprete de Python. Tanto los ejemplos numéricos como el análisis de sensibilidad se programan por separado en scripts independientes. En los siguientes subcapítulos se detalla la estructura de los códigos implementados. 6.1 Programación Ejemplo 1 En primer lugar, como en cualquier programa, es necesario incluir las librerías que se van a utilizar: Figura 4. Ejemplo 1: Librerías. 1. Math: Permite el acceso a las funciones matemáticas definidas en el estándar de C. 2. Sympy: Biblioteca de matemáticas simbólicas que funciona como un sistema de álgebra por computadora. De ella se importan la clase Symbol, que nos permitirá definir variables simbólicas (estas variables son un objeto de la clase Symbol) y el solver que nos permitirá resolver una expresión compleja integrada en el algoritmo. 3. Numpy: Significa “Python Numérico” y es la librería que se utiliza para computación científica y análisis de datos. 4. Re: Permite buscar coincidencias de expresiones regulares como patrones o cadenas de texto. En este caso es necesaria para las funciones de lectura de datos desde y escritura de resultados en .txt. 20 A continuación, se definen las funciones de lectura de datos y escritura de resultados. La función de lectura de datos recibe como argumento el nombre del fichero donde se recogen los datos. En ella se incluye el código que permite trasladar la información cargada manualmente en el fichero .txt a las variables definidas en el programa. Finalmente, devuelve todas esas variables. Figura 5. Ejemplo 1: Función de lectura de datos. Figura 6. Ejemplo 1: Fichero de datos. 21 La Figura 7 muestra la función mediante la que se escriben los resultados obtenidos en cada iteración del algoritmo en otro fichero .txt bastante sencillo pero que permite visualizarlos de forma ordenada por casos. Esta función recibe como argumentos tanto los parámetros que determinan los distintos casos de estudio (𝜃,𝑡𝑑) como aquellas variables que representan la solución de cada uno de ellos. Ya que los argumentos cambian su valor a lo largo de la ejecución del algoritmo, esta función es llamada tantas veces como casos se analizan. No devuelve ningún valor en Python. Figura 7. Ejemplo 1: Función de escritura de resultados. El fichero .txt de resultados que se obtiene es el siguiente: Figura 8. Ejemplo 1: Fichero de resultados. 22 La parte principal del código comienza con una llamada a la función de lectura de datos anteriormente descrita. De este modo, se obtienen los datos para la posterior ejecución del algoritmo, y se define una matriz de ceros donde se irán guardando los resultados, que finalmente serán extraídos a través del fichero de texto. Se utiliza un doble bucle for que permitirá realizar todas las combinaciones de 𝜃 y 𝑡𝑑 que se pretenden analizar, donde se hace uso de dos contadores:  cont: indica el número de caso en el que nos encontramos (solo para la visualización en el terminal de Python)  it: cuenta el número de iteraciones que realiza el algoritmo en cada caso. A continuación, se programan los pasos del algoritmo: Paso 1: Se pone el contador de iteraciones a cero y se inicializa 𝑝=𝑐. Se incluyen algunos print con la única finalidad de ver cómo va evolucionando el algoritmo a través del terminal de Python mientras se está ejecutando el código. Paso 2: Este paso se incluye dentro de un bucle while que permite volver al segundo for y pasar al caso siguiente cuando se llega al óptimo, usando break. La función p_variation calcula ∆𝑝. Según si el valor obtenido es mayor, menor o igual a cero, se utilizan las ecuaciones correpondientes para calcular el tiempo de ciclo de reposición y el precio. El caso más complejo es en el que ∆𝑝>0, donde para el cálculo de 𝑇 es necesario recurrir a una función solver de la librería Sympy y trabajar con variables simbólicas. Paso 3: Está integrado en cada uno de los if del paso 2. En él se comprueba si la diferencia entre el nuevo valor de 𝑝 que se acaba de calcular y el anterior es menor que 1·10−5, en cuyo caso se toman los valores de 𝑇 y 𝑝 calculados cómo los óptimos, 𝑇∗ y 𝑝∗, y se calculan la cantidad de pedido y el beneficio óptimos, 𝑄∗ y 𝑍∗. Finalmente se llama a la función que escribe el fichero de resultados. Se actualiza el valor de cont para indicar que pasamos al siguiente caso y se utiliza un break para salir del bucle while. En caso de que la diferencia sea mayor que 1·10−5, habría que iterar de nuevo, por lo que se aumenta el contador de iteraciones it y se actualiza el valor de 𝑝 al calculado en esta iteración. En la Figura 9 se muestra el código completo del Ejemplo 1. 23 24 31 Figura 15. Análisis de Sensibilidad: Variaciones porcentuales. En cuanto a la función principal, lo que la diferencia de las funciones principales de los códigos anteriores es que se incluye una primera parte en la que se definen dos vectores:  vector_variacion: incluye las variaciones a aplicar en tanto por uno: 0,5 (-50%); 0,75 (-25%); 1,25 (+25%); 1,50 (+50%).  vector_parametros: guarda los valores iniciales de 𝐴, 𝑐 y ℎ, que se leen directamente del fichero de datos. Figura 16. Vectores variación parámetros 𝐴, 𝑐 y ℎ. Estos vectores, además de utilizarse en la función principal, son los que se usan para escribir los ficheros de resultados pudiendo diferenciar los casos. A continuación, dentro del doble bucle for y, nuevamente, mediante unos if se determina qué variable, 𝐴, 𝑐 o ℎ va ser modificada, haciendo posible que se den todas las combinaciones entre parámetro e incremento/decremento que se le aplica. 32 Figura 17. Triple if para la diferenciación del parámetro incrementado/decrementado. El resto del código es muy similar al de los Ejemplos 1 y 2. La Figura 18 presenta el código completo. 33 34 35 36 Figura 18. Código Análisis de Sensibilidad. 37 7 EJEMPLOS NUMÉRICOS 7.1 Ejemplo 1 En este caso, se analizan los resultados que se obtienen de la combinación de distintos valores del periodo de tiempo en el que no se produce deterioro 𝑡𝑑 y la constante de deterioro 𝜃.  𝑡𝑑={0; 15 365=0,0411; 30 365=0,0822} años  𝜃={0,05; 0,1; 0,2} Los costes toman los valores siguientes:  𝐴 = 250 $ / pedido  ℎ = 0,4 $ / unidad  𝑐 = 3 $ / unidad La demanda viene representada por la función 𝐷(𝑝)=𝛼𝑝−𝛽 donde 𝛼 y 𝛽 toman los valores 400.000 y 2,5 respectivamente, quedando la expresión 𝐷(𝑝)=400.000 𝑝−2,5. En la Tabla 1 se representan los resultados obtenidos: 𝜃 𝑡𝑑 𝑝∗ 𝑇∗ 𝑄∗ 𝑍∗ Iteraciones 0,05 0 5,17031 0,3695 2.454,11 12.933,0 5 0,0411 5,16044 0,36934 2.460,02 12.971,8 5 0,0822 5,15232 0,37057 2.473,79 13.006,3 5 0,1 0 5,19325 0,32768 2.167,96 12.756,6 5 0,0411 5,17354 0,32751 2.179,05 12.833,5 5 0,0822 5,15782 0,3298 2.203,92 12.901,0 5 0,2 0 5,23321 0,27475 1.803,3 12.455,0 6 0,0411 5,19402 0,27465 1.822,88 12.606,3 6 0,0822 5,16447 0,2787 1.865,01 12.735,6 6 Tabla 1. Resultados Ejemplo 1 A la vista de los resultados expuestos para este ejemplo, se pueden extraer las siguientes conclusiones: (a) Para un valor fijo de 𝜃, al aumentar 𝑡𝑑, la cantidad óptima de pedido, 𝑄∗, y el beneficio total por unidad, 𝑍∗, aumentan mientras el precio óptimo de venta, 𝑝∗, disminuye. Desde el punto de vista de la gestión de inventarios, cuanto mayor es el periodo de tiempo en el que la mercancía no se deteriora, 38 menor es el precio de venta y mayores las cantidades óptimas de pedido, así como el beneficio total por unidad de tiempo obtenido. Además, cuanto menor es la tasa de deterioro, 𝜃, menor es el impacto de la duración del periodo de no deterioro de los productos, 𝑡𝑑, en el beneficio. En cambio, al aumentar 𝜃, el beneficio total por unidad de tiempo es significativamente mayor al aumentar 𝑡𝑑. (b) Cuando la tasa de deterioro 𝜃 aumenta sin hacerlo el resto de parámetros del modelo, los valores óptimos del tiempo de ciclo de reposición, 𝑇∗, la cantidad de pedido, 𝑄∗, y el beneficio total por unidad de tiempo 𝑍∗ disminuyen mientras el precio de venta, 𝑝∗, aumenta. Esto quiere decir que, si el vendedor consigue disminuir la tasa de deterioro de sus productos, conseguirá un mayor beneficio. 7.2 Ejemplo 2 La diferencia con el Ejemplo 1 reside en que, en este caso, las variables que toman distintos valores serán los parámetros que definen la función de demanda: 𝛼 y 𝛽.  𝛼={200.000; 300.000; 400.000; 500.000; 600.000}  𝛽={2; 2,5; 3} Los costes 𝐴, ℎ y 𝑐 toman valores idénticos a los del ejemplo anterior. Por último, se toman 𝜃=0,05 y 𝑡𝑑= 15 365=0,0411 años. De la combinación de los valores de 𝛼 y 𝛽 se obtienen 15 casos diferentes, cuyos resultados se recogen en la Tabla 2: 𝛼 𝛽 𝑝∗ 𝑇∗ 𝑄∗ 𝑍∗ Iteraciones 200.000 2 6,21907 0,41716 2.175,54 15.480,3 5 2,5 5,23488 0,52988 1.709,39 6.207,5 6 3 4,78181 0,69754 1.295,8 2.557,2 6 300.000 2 6,17567 0,33891 2.683,34 23.551,2 5 2,5 5,1879 0,42871 2.116,45 9.572,2 5 3 4,72431 0,56072 1.614,68 4.034,6 6 400.000 2 6,15014 0,29271 3.112,3 31.665,5 5 2,5 5,16044 0,36934 2.460,02 12.971,8 5 3 4,69104 0,48124 1.883,6 5.539,5 6 500.000 2 6,13288 0,26139 3.490,99 39.807,5 5 2,5 5,14193 0,32923 2.763,08 16.393,7 5 3 4,66876 0,42787 2.120,65 7.061,9 6 600.000 2 6,12022 0,23838 3.834,05 47.969,1 5 39 𝛼 𝛽 𝑝∗ 𝑇∗ 𝑄∗ 𝑍∗ Iteraciones 2,5 5,12839 0,29984 3.037,42 19.831,4 5 3 4,65253 0,38891 2.335,1 8.596,7 6 Tabla 2. Resultados Ejemplo 2 De los resultados obtenidos se puede concluir que cuando el factor de escala, 𝛼, aumenta manteniéndose 𝛽 invariable, la cantidad óptima de pedido 𝑄∗y el beneficio total por unidad de tiempo 𝑍∗ aumentan, mientras que el precio de venta 𝑝∗ y la duración óptima del ciclo de reposición 𝑇∗ disminuyen. Por otro lado, cuando 𝛽 aumenta manteniéndose constante 𝛼, el precio de venta óptimo 𝑝∗, la cantidad óptima de pedido y el beneficio total por unidad de tiempo 𝑍∗ disminuyen, mientras la duración del ciclo de reposición aumenta. La conclusión desde el punto de vista de la gestión de inventarios es que el incremento del factor de escala de la demanda, 𝛼, hace que la demanda se vea también incrementada. Así, la cantidad óptima de pedido por ciclo de reposición y el beneficio total por unidad de tiempo aumentarán. Por su parte, cuando lo que varía es la elasticidad del precio, 𝛽, su incremento causa una disminución tanto de la cantidad de pedido por ciclo de reposición como del beneficio total por unidad de tiempo. 47 10 REFERENCIAS Abad, P.L. (1996). Optimal Pricing and Lot Sizing Under Conditions of Perishability and Partial Backordering. Management Science, 42, 1093-1104. Abad, P.L. (2003). Optimal Pricing and Lot-sizing Under Conditions of Perishability, Finite Production and Partial Backordering and Lost Sales. European Journal of Operational Research, 144, 677-686. Cantidad económica de pedido. (s.f.). Obtenido de Wikipedia, la Enciclopedia Libre: https://es.wikipedia.org/wiki/Cantidad_econ%C3%B3mica_de_pedido Chang, H.H., Teng, J.T., Ouyang, L.Y., and Dye, C.Y. (2006). Retailer's Optimal Pricing and Lot-sizing Policies for Deteriorating Items with Partial Backlogging. European Journal of Operational Research, 168, 51-64. Cohen, M.A. (1977). Joint Pricing and Ordering Policy for Exponentially Decaying Inventory with Known Demand. Naval Research Logistic Quarterly, 24, 257-268. Covert, R.P., and Philip, G.C. (1973). An EOQ Model for Items with Weibull Distribution Deterioration. AIIE Transaction, 5, 323-326. Dye, C. Y. (2013). The effect of preservation technology investment on a non-instantaneous deteriorating inventorymodel. Omega, 41(5), 872–880. Dye, C.Y. (2007). Joint Pricing and Ordering Policy for Deteriorating Inventory with Partial Backlogging. Omega, 35, 184-189. El tutorial de Python. (s.f.). Obtenido de Documentación de Python: https://docs.python.org/es/3/tutorial/ Ghare, P.M., and Schrader, G.H. (1963). A Model for Exponentially decaying Inventory System. International Journal of Production Research, 21, 449-460. Ghoreishi, M., Weber, G. W., & Mirzazadeh, A. (2015). Annals of Operations Research. An inventory model for non-instantaneous deteriorating items with partial backlogging, permissible delay in payments, inflation-and selling price-dependent demand and customer returns., 226(1), 221–238. Goyal, S.K., and Giri, B.C. (2001). Recent Trends in Modeling of Deteriorating Inventory. European Journal of Operational Research, 134, 1-16. Goyal, S.K., and Gunasekaran, A. (1995). An Integrated Production-inventory-marketing Model for Deteriorating Items. Computers & Industrial Engineering, 28, 755-762. Hsieh, T. P., & Dye, C. Y. (2010). Pricing and lot-sizing policies for deteriorating items with partial backlogging under inflation. Expert Systems with Applications, 37(10), 234–7242. Jason, F. (2022). Economic Order Quantity (EOQ). Obtenido de Investopedia: https://www.investopedia.com/terms/e/economicorderquantity.asp Khan, M. A. A., Shaikh, A. A., Panda, G. C., & Konstantaras, I. (2019a). Two-warehouse inventory model for deteriorating items with partial backlogging and advance payment scheme. RAIRO-Operations Research, 53(5), 1691–1708. La Librería Numpy. (s.f.). Obtenido de Aprende con Alf: https://aprendeconalf.es/docencia/python/manual/numpy/ 48 Librería math - Funciones matemáticas. (s.f.). Obtenido de Documentación de Python: https://docs.python.org/es/3/library/math.html Librería re - Operaciones con expresiones regulares. (s.f.). Obtenido de Documentación de Python: https://docs.python.org/es/3/library/re.html Librería Sympy. (s.f.). Obtenido de Sympy.org: https://www.sympy.org/es/ Lin, C., Tan, B., and Lee, W.-C. (2000). An EOQ Model for Deteriorating Items with Time-varying Demand and Shortages. International Journal of Systems Science, 31, 391-400. Mahmoudinezhad, M., Ghoreishi, M., Mirzazadeh, A., & Ghodratnama, A. (2014). An inventory model for non-instantaneous deteriorating items with imperfect quality, delay in payments and time value money. Journal of Industrial Engineering and Management Studies, 1(1), 58–71. Maihami, R., & Abadi, I. N. K. (2012). Joint control of inventory and its pricing for non-instantaneously deteriorating items under permissible delay in payments and partial backlogging. Mathematical and Computer Modelling, 55(5), 1722–1733. Maihami, R., & Kamalabadi, I. N. (2012). Joint pricing and inventory control for non-instantaneous deteriorating itemswith partial backlogging and time and price dependent demand. International Journal of Production Economics, 136(1), 116–122. Mashud, A., Khan, M., Uddin, M., & Islam, M. (2018). A non-instantaneous inventory model having different deterioration rates with stock and price dependent demand under partially backlogged shortages. Uncertain Supply Chain Management, 6(1), 49–64. Mukhopadhyay, S., Mukherjee, R.N., and Chaudhuri, K.S. (2004). Joint Pricing and Ordering Policy for a Deteriorating Inventory. Computers and Industrial Engineering, 47, 339-349. Mukhopadhyay, S., Mukherjee, R.N., and Chaudhuri, K.S. (2005). An EOQ Model with Two-parameter Weibull Distribution Deterioration and Price-Dependent Demand. International Journal of Mathematical Education in Science and Technology, 36, 25-33. Patel, H., & Gor, A. (2019). Salvage value and three variable Weibull deteriorating rate for non-instantaneous deteriorating items. Asian-European Journal of Mathematics, 12(05). Paz Soldán Marcelo and Villarroel Jaime. (2009). La elasticidad precio de la demanda para algunos productos de la economía boliviana. Philip G.C. (1974). A Generalized EOQ Model for Items with Weibull Distribution. AIIE Transaction, 6, 159- 162. Rezagholifam, M., Sadjadi, S. J., Heydari, M., & Karimi, M. (2022). Optimal pricing and ordering strategy for non-instantaneous deteriorating items with price and stock sensitive demand and capacity constraint. International Journal of Systems Science: Operations & Logistics, 9(1), 121-132. Shah, Y.K. (1977). An Order-level Lot Size Inventory Model for Deteriorating Items. AIIE Transaction, 9, 108-112. Shaikh, A. A., Mashud, A. H. M., Uddin, M. S., & Khan, M. A. A. (2017). Non-instantaneous deterioration inventory model with price and stock dependent demand for fully backlogged shortages under inflation. International Journal of Business Forecasting and Marketing Intelligence, 3(2), 152–164. Sonntag, M. (s.f.). Inventory Replenishment: Definition, Explanation, & Best Practices. Obtenido de Repsly: https://www.repsly.com/blog/inventory-replenishment-definition-explanation-best-practices 49 Teorema de Bolzano. (s.f.). Obtenido de Wikipedia, la Enciclopedia Libre: https://es.wikipedia.org/wiki/Teorema_del_valor_intermedio Tiwari, S., Cárdenas-Barrón, L. E., Khanna, A., & Jaggi, C. K. (2016). Impact of trade credit and inflation on retailer’s ordering policies for non-instantaneous deteriorating items in a two-warehouse environment. International Journal of Production Economics, 176, 154–169. Vaghela, C. R., & Shah, N. H. (2020). Dynamic pricing, advertisement investment and replenishment model for deteriorating items. Optimization and inventory management asset analytics (performance and safety management), 81–92. Wang, C., & Huang, R. (2014). Pricing for seasonal deteriorating products with price-and ramp-type timedependent demand. Computers & Industrial Engineering, 77, 29–34. Wee, H.M. (1995). Joint Pricing and Replenishment Policy for Deteriorating Inventory with Declining Market. International Journal of Production Economics, 40, 163-171. Wee, H.M. (1997). A Replenishment Policy for Items with a Price-dependent Demand and a Varying Rate of Deterioration. Production Planning and Control, 8, 494-499. Wee, H.M. (1999). Deteriorating Inventory Model with Quantity Discount, Pricing and Partial Backordering. International Journal of Production Economics, 59, 511-518. Wee, H.M., and Law, S.T. (2001). Replenishment and Pricing Policy for Deteriorating Items Taking into Account the Time Value of Money. International Journal of Production Economics, 71, 213-220. Wu, K.S., Ouyang L.Y., & Yang C.T. (2006). An Optimal Replenishment Policy for Non-instantaneous Deteriorating Items with Stock-dependent Demand and Partial Backlogging. International Journal of Production Economics, 101, 369–384. Wu, K.S., Ouyang L.Y., & Yang C.T. (2009). Coordinating replenishment and pricing policies for noninstantaneous deteriorating items with price-sensitive demand. International Journal of Systems Science, 40(12), 1273-1281. Yang, C. T., Ouyang, L. Y., & Wu, H. H. (2009). Retailer's optimal pricing and ordering policies for noninstantaneous deteriorating items with price-dependent demand and partial backlogging. Mathematical Problems in Engineering.